perm filename G9[KID,KMC] blob sn#111191 filedate 1974-11-15 generic text, type T, neo UTF8
TITLE G9
;THIS MEMBER OF THE NEW KIDS SUITE ALLOWS ARBITRARY TYPING.
;WORDS WHICH ARE TYPED IN A LINE ARE "REWARDED".
EXTERNAL MAINLP, DPINIT, PDPGET, CLEAR, SHOW, AIVECT, CHINIT
EXTERNAL LV2, KILL, TYOPTR, TIKCNT, DDRREL, DMDDIR, SPEAK
INTERNAL DOTHNG, GAMNAM, GAMENO, DIRECT

X1←6
X2 ← X1+1
X3 ← X2+1
X4 ← X3+1
X5 ← X4+1
X6 ← X5+1
P←17
A←13	;SAME AS X6
B←14
C←15

GAMNAM:	0			;NO DPY FILE REQUIRED.
GAMENO:	001100000000		;GAME NUMBER FOR HISTORY FILE
DIRECT:	BLOCK	2		;ALLOW FOR NO ENTRIES.
ENTURD:	0			;ZERO UNTIL INITIALISATION

DOTHNG:	;POSSIBILITY OF INITIALISATION
	MOVE	A,ENTURD	;FIRST TIME THRU INDICATOR.
	JUMPN	A,APRES		;SKIP INITIALISATION IF SET.
	SETOM	ENTURD		;SET THE FIRST TIME THRU FLAG.

INITL:	;THIS IS THE INITIALISATION CODE.
	SETZM	LINLTH		;LENGTH OF CURRENT LINE IS ZERO.
	MOVEI	A,3		;# OF PREVIOUS LINES = 3.
	MOVEM	A,LINCNT	;3 IS THE LINE COUNT.
	SETZM	LINBUF		;FIRST LINE IS EMPTY
	SETZM	LINBUF+4	;SECOND LINE IS EMPTY
	SETZM	LINBUF+10	;THIRD LINE IS EMPTY

APRES:	;INITIALISATION DONE IF NEEDED.
	;CONTROL BITS HAVE ALREADY BEEN THROWN AWAY.
	CAIN	X1,015		;TEST FOR CARRIAGE RETURN SYMBOL
	JRST	ACTCR
	CAIN	X1,137		;TEST FOR RECODED BACKSPACE.
	JRST	ACTBSP
	CAIN	X1,053		;+ MEANS CLEAR IT ALL.
	JRST	ACTPLS
	;ELIMINATE MOST OF THE NON-ALPHANUMERICS.
	CAIN	X1,056
	JRST	ACTCR 		;PERIOD FOUND.
	CAIN	X1,040
	JRST	RECODE		;SPACE FOUND.
	CAIN	X1,054		;TEST FOR COMMA
	JRST	ACTBSP		;COMMA FOUND
	CAILE	X1,132
	JRST	MAINLP		;REJECT CHARCTERS ABOVE ALPHABET.
	CAIGE	X1,060
	JRST	MAINLP		;REJECT CHARACTERS BELOW DIGITS.
	CAIN	X1,073		;KID MAY TYPE A SEMICOLON
	JRST	MAINLP
RECODE:	SUBI	X1,040		;RECODE TO SIXBIT

	MOVE	X2,LINLTH	;NUMBER OF CHARACTERS IN LINE SO FAR
	CAIL	X2,=16
	JRST	LINFUL		;LAST LINE WAS FULL
NORMCH:	;WILL PUT THE SYMBOL IN X1 INTO THE CURRENT LINE.
	MOVE	X2,LINLTH	;# OF CHARACTERS IN LINE SO FAR
	IDIVI	X2,6
	IMULI	X3,6		;A SHIFT APPROPRIATE TO CHAR POSITION.
	MOVE	X4,NEWLIN(X2)	;APPROPRIATE LINE SEGMENT (WORD).
	ROT	X4,0(X3)
	LSH	X4,6
	OR	X4,X1
	ROT	X4,-6
	IMULI	X3,-1
	ROT	X4,0(X3)
	MOVEM	X4,NEWLIN(X2)	;APPROPRIATE WORD IS NOW MODIFIED.
	AOS	LINLTH		;NOW THERE IS AN EXTRA CHARACTER.
	JRST	SETUP

LINFUL:	;LINLTH IS 16 SO CANNOT JUST PUT THE CHARACTER IN.
	MOVE	X2,NEWLIN
	LSH	X2,-=30
	CAIE	X2,0		;TEST FIRST CHARACTER OF LINE
	JRST	GROAN		;NOT A SPACE.
	MOVE	X2,NEWLIN
	MOVE	X3,NEWLIN+1
	LSHC	X2,6
	MOVEM	X2,NEWLIN
	MOVE	X2,NEWLIN+1
	MOVE	X3,NEWLIN+2
	LSHC	X2,6
	MOVEM	X2,NEWLIN+1
	LSH	X1,=12
	OR	X3,X1
	MOVEM	X3,NEWLIN+2
	MOVEI	X1,=16
	MOVEM	X1,LINLTH	;NOW THERE ARE 16 CHARS IN THE LINE (FULL).
	MOVE	A,[SIXBIT /O1/]
	PUSHJ	P,DMDDIR
	JUMPN	A,.+2
	PUSHJ	P,SPEAK

	JRST	SETUP

ADDLIN:	;PUT NEWLIN INTO LINBUFFER
	MOVE	X3,LINCNT
	AOS	LINCNT
	IMULI	X3,4		;NOW IS A POINTER
	MOVE	X4,LINLTH
	MOVEM	X4,LINBUF+0(X3)
	MOVE	X4,NEWLIN
	MOVEM	X4,LINBUF+1(X3)
	MOVE	X4,NEWLIN+1
	MOVEM	X4,LINBUF+2(X3)
	MOVE	X4,NEWLIN+2
	MOVEM	X4,LINBUF+3(X3)
	SETZM	LINLTH		;START A NEW LINE
	POPJ	P,


GROAN:	;CURRENT LINE IS FULL   -   GROAN,ADD CR,ADD THE CHAR
	MOVE	A,[SIXBIT /R1/]
	PUSHJ	P,DMDDIR
	JUMPN	A,.+2
	PUSHJ	P,SPEAK

	PUSHJ	P,ADDLIN
	JRST	NORMCH

ACTPLS:	;THE KID TYPED A PLUS CHARACTER - SO INITIALISE.
	SETZM	ENTURD		;SET FOR INITIALISATION NEXT TIME.
	MOVEI	A,1
	PUSHJ	P,KILL		;CLEAR POG1
	JRST	MAINLP

ACTCR:	;CR CHARACTER TYPED.
	PUSHJ	P,ADDLIN
	JRST	SETUP		;DISPLAY WHAT WE HAVE.

ACTBSP:	;BACKSPACE CHARACTER TYPED IN.
	MOVE	X1,LINLTH
	CAIG	X1,0
	JRST	SUBLIN		;NO CHARACTERS IN CURRENT LINE.
	SOS	LINLTH
	JRST	SETUP

SUBLIN:	;MAKE PREVIOUS LINE THE CURRENT LINE
	MOVE	X1,LINCNT
	CAIE	X1,0		;TEST FOR CASE LINCNT=0
	SOS	LINCNT		;DECREMENT LINCNT
	MOVE	X1,LINCNT
	IMULI	X1,4		;MAKE A POINTER
	MOVEI	X2,0		;WILL WIPE OUT CHARACTERS IN THIS LINE
	MOVEM	X2,LINLTH	;NEW CURRENT LINE LENGTH.
	MOVE	X2,LINBUF+1(X1)
	MOVEM	X2,NEWLIN
	MOVE	X2,LINBUF+2(X1)
	MOVEM	X2,NEWLIN+1
	MOVE	X2,LINBUF+3(X1)
	MOVEM	X2,NEWLIN+2
	JRST	SETUP

SETUP:	;THE LINES ARE ALL ARRANGED FOR WORD DETECTION AND DISPLAY
	;FIRST COMPUTE NUMBER OF LINES TO BE DISPLAYED.
	MOVEI	X2,LINBUF	;X2 WILL INDEX FIRST LINE SHOWN
	MOVE	X1,LINCNT	;NUMBER OF LINES
	CAIG	X1,7		;SKIP IF MORE THAN 7 LINES
	JRST	LAB1
	SUBI	X1,7		;NO. OF LINES THAT WILL BE SKIPPED.
	IMULI	X1,4
	ADD	X2,X1		;ADD THIS DISPLACEMENT
	MOVEI	X1,7		;X1 IS NUMBER OF LINES TO BE PRINTED.

LAB1:	;X1 AND X2 ARE SET UP.
	;NOW PUT CHARACTERS OF PAGE-TO-BE-SHOWN IN A STRAIGHT LIST.
	MOVE	X3,X2		;NEXT LINE TO BE EXPANDED.
	MOVEM	X1,BLOOP	;NUMBER OF LINES YET TO BE WORKED ON.
	MOVEI	X6,CHRBUF	;ADDR OF THE SERIAL LIST.
LAB2:	MOVE	X4,0(X3)	;NUMBER OF CHARACTERS ON THIS LINE.
	MOVEM	X4,BLEEP	;WILL USE THIS FOR LOOP COUNT
	SOSGE	BLOOP		;TEST FOR ALL LINES PRINTED.
	JRST	LAB8
	MOVE	X4,X3		;TAKE A COPY OF THE ADDR. OF THE LINE
LAB3:	SETZM	X5
	SUBI	X5,=36		;6 CHARACTERS PER WORD
	ADDI	X4,1		;ADDR OF NEXT WORD OF CHARS.
LAB4:	SKIPN	BLEEP		;TEST FOR NO MORE CHARACTERS
	JRST	LAB6		;ESCAPE LOOP
	JUMPE	X5,LAB3		;JUMP IF NEW WORD REQUIRED
	SOS	BLEEP		;ONE LESS CHARACTER LEFT
	ADDI	X5,6		;UPDATE X5 FOR APPROPRIATE SHIFT
	MOVE	0,0(X4)		;CURRENT WORD OF CHARACTERS.
	LSH	0,0(X5)
	ANDI	0,77		;APPROPRIATE CHARACTER ISOLATED.
	ADDI	0,040		;CONVERT TO ASCII
	MOVEM	0,0(X6)		;PUT THIS CHARACTER IN CHRBUF
	ADDI	X6,1		;UPDATE THE POINTER.
	JRST	LAB4

LAB6:	ADDI	X3,4		;MOVE POINTER TO NEXT GROUP.
	MOVEI	X4,015		;A CR CHARACTER.
	MOVEM	X4,0(X6)	;PUT IT IN THE LIST.
	ADDI	X6,1		;INDICATE THE ADDED CHARACTER.
	MOVEI	X4,012		;A LF CHARACTER.
	MOVEM	X4,0(X6)	;PUT IT IN THE LIST.
	ADDI	X6,1		;INDICATE THE ADDED CHARACTER.
	JRST	LAB2

LAB8:	MOVEI	X4,NEWLIN-1	;ADDRESS OF NEW LINE.
	MOVE	X3,LINLTH
	MOVEM	X3,BLEEP	;NUMBER OF CHARACTERS.
LAB9:	SETZM	X5
	SUBI	X5,=36		;6 CHARACTERS PER WORD
	ADDI	X4,1		;ADDR OF NEXT WORD OF CHARS.
LAB10:	SKIPN	BLEEP		;TEST FOR NO MORE CHARACTERS
	JRST	LAB12		;ESCAPE LOOP
	JUMPE	X5,LAB9		;JUMP IF NEW WORD REQUIRED
	SOS	BLEEP		;ONE LESS CHARACTER LEFT
	ADDI	X5,6		;UPDATE X5 FOR APPROPRIATE SHIFT
	MOVE	0,0(X4)		;CURRENT WORD OF CHARACTERS.
	LSH	0,0(X5)
	ANDI	0,77		;APPROPRIATE CHARACTER ISOLATED.
	ADDI	0,040		;CONVERT TO ASCII
	MOVEM	0,0(X6)		;PUT THIS CHARACTER IN CHRBUF
	ADDI	X6,1		;UPDATE THE POINTER.
	JRST	LAB10

LAB12:	;NEXT THING TO DO IS PACK LAST 6 CHARACTERS IN A WORD.
	SETZM	BLARP		;WILL ACCUMULATE CHARS HERE
	SETZM	X3
	SUBI	X3,=36		;PREPARE TO LOOP 6 TIMES.
	MOVE	X4,X6		;START POINTER AT END OF LINEAR LIST
LAB13:	JUMPE	X3,LAB14	;IF 6 CHARACTERS FETCHED THEN ESCAPE.
	ADDI	X3,6
	SUBI	X4,1
	MOVE	X5,0(X4)	;GET NEXT CHARACTER.
	SUBI	X5,040		;CONVERT BACK TO SIXBIT
	CAIGE	X5,0		;CR AND LF CHARS ARE A BOTHER
	SETZM	X5		;MAKE THEN THE SAME AS SPACES.
	LSH	X5,=30		;GET TO TOP OF WORD
	LSH	X5,0(X3)	;GET INTO APPROPRIATE POSITION
	ORM	X5,BLARP	;ADD TO PARTIAL WORD.
	JRST	LAB13

LAB14:	;NOW LOOKUP THE LISTS TO FIND IF A GOOD WORD WAS TYPED.
	SUBI	X6,1
	MOVEM	X6,TOPLTR	;RECORD TOP LETTER ADDRESS.
	MOVE	X1,0(X6)	;LAST CHARACTER TYPED
	SUBI	X1,100		;POSITIVE IFF LAST CHAR WAS LETTER.
	CAIG	X1,0		;CHUCK NONALPHABETIC CHARS.
	JRST	NOWORD		;NO WORD ENDS WITH A DIGIT ETC.
	;RANGE OF CHARACTER IS 000-037 AT MOST.
	HLRZ	X2,WDLST(X1)	;ADDRESS OF APPROPRIATE WORD LIST
	JUMPE	X2,NOWORD	;IF NO ADDRESS THEN NO WORD ENDS
				;WITH THE CHARACTER.
	HRRZ	X3,WDLST(X1)	;LENGTH OF WORD LIST
LAB20:	MOVE	X1,BLARP	;GET THE LAST 6 CHARS.
	HRRZ	X4,1(X2)	;A SHIFT FOR X1
	LSH	X1,0(X4)	;APPROPRIATE CHARACTERS SELECTED.
	CAMN	X1,0(X2)	;SKIP IF NOT THE WORD
	JRST	WDFND
	ADDI	X2,3		;THERE MAY BE ANOTHER POSSIBILITY
	SOSLE	X3
	JRST	LAB20		;MORE TO TRY.
	JRST	NOWORD		;NO MORE SO NO JACKPOT.

WDFND:	;THE LAST FEW CHARACTERS ON THE CURRENT LINE FORM A WORD.
	MOVEM	X1,NEWLIN+1		;WE ALTER CURRENT LINE SO THAT
					;THE NEW WORD STARTS IN COL 7.
	MOVEI	X1,0			;A WORD OF SIXBIT SPACES.
	MOVEM	X1,NEWLIN		;COLS 1-6 ARE BLANK.
	HLRZ	X1,1(X2)		;LENGTH OF THE WORD.
	ADDI	X1,6			;CURRENT LINE LENGTH.
	MOVEM	X1,LINLTH
	MOVE	X1,2(X2)	;THE NAME OF THE APPROPRIATE SOUND FILE
	MOVEM	X1,FILNAM
	HLRZ	X1,1(X2)	;THE NUMBER OF LETTERS IN THE WORD.
	MOVEM	X1,WDLTH
	PUSHJ	P,SHOLST	;SHOW COMPLETE
	PUSHJ	P,G9WAIT	;WAIT A LITTLE WHILE.
	PUSHJ	P,WORD		;SHOW ISOLATED WORD
	PUSHJ	P,G9WAIT
	PUSHJ	P,SHOLST	;SHOW COMPLETE
	PUSHJ	P,G9WAIT
	PUSHJ	P,WORD		;SHOW ISOLATED WORD
	PUSHJ	P,G9WAIT
	MOVEI	A,1
	PUSHJ	P,KILL		;CLEAR THE SCREEN.
	PUSHJ	P,G9WAIT
	PUSHJ	P,WORD		;SHOW ISOLATED WORD
	MOVE	A,FILNAM
	PUSHJ	P,DMDDIR
	JUMPN	A,.+2
	PUSHJ	P,SPEAK
	MOVEI	A,1
	PUSHJ	P,KILL		;CLEAR THE SCREEN.
	MOVEI	X1,015
	JRST	APRES		;PRETEND HE SHE OR IT TYPED CRLF

NOWORD:	;ARRIVE HERE IF THE TRAILING LETTERS ARE NOT A KNOWN WORD.
COARSE:	PUSHJ	P,SHOLST	;SHOW THE LIST OF CHARACTERS IN CHRBUF
	JRST	MAINLP


SHOLST:	;S/R TO DISPLAY ALL THE CHARACTERS
	;TOPLTR POINTS TO CELL OF LAST CHARACTER TO BE SHOWN.
	PUSHJ	P,CLEAR		;CLEAR BUFFER
	MOVEI	A,=0
	MOVEI	B,=400
	PUSHJ	P,AIVECT	;AIVECT(0,400)
	MOVEI	A,0
	MOVEI	B,0
	MOVEI	C,46
	MOVEI	0,7
	DPB	0,[POINT 3,C,27]
	PUSHJ	P,LV2		;GVECT(0,0,46,7,0)
	MOVEI	A,7
	MOVEI	B,=1000
	MOVEI	C,=-500		
	PUSHJ	P,CHINIT	;CHINIT(7,1000,-500)

	MOVEI	A,CHRBUF	;THIS WILL POINT TO CHARACTERS PRINTED.
	MOVEI	B,015		;A CARRIAGE RETURN
	IDPB	B,TYOPTR	;CR TO DISPLAY BUFFER
	MOVEI	B,012		;A LINE FEED CHARACTER.
	IDPB	B,TYOPTR	;LF TO DISPLAY BUFFER
FILLLP:	MOVE	B,0(A)		;GET THE NEXT
	IDPB	B,TYOPTR	;PUTIT DISPLAY BUFFER
	ADDI	A,1		;COUNT THAT
	CAMG	A,TOPLTR
	JRST	FILLLP

	MOVEI	A,1		;SHOW THE CURRENT TEXT ON POG 1
	PUSHJ	P,SHOW
	POPJ	P,

WORD:	;S/R TO SHOW JUST THE CHARACTERS OF THE LAST WORD.
	;TOPLTR POINTS TO CELL OF LAST CHARACTER TO BE SHOWN.
	;WDLTH CONTAINS THE NUMBER OF CHARACTERS TO BE PRINTED.
	MOVE	A,TOPLTR
	SUB	A,WDLTH		;ADDRESS OF LAST NONPRINTABLE.
	MOVEM	A,BLIMP
	PUSHJ	P,CLEAR		;CLEAR BUFFER
	MOVEI	A,=0
	MOVEI	B,=400
	PUSHJ	P,AIVECT	;AIVECT(0,400)
	MOVEI	A,0
	MOVEI	B,0
	MOVEI	C,46
	MOVEI	0,7
	DPB	0,[POINT 3,C,27]
	PUSHJ	P,LV2		;GVECT(0,0,46,7,0)
	MOVEI	A,7
	MOVEI	B,=1000
	MOVEI	C,=-500		
	PUSHJ	P,CHINIT	;CHINIT(7,1000,-500)

	MOVEI	A,CHRBUF	;THIS WILL POINT TO CHARACTERS PRINTED.
	MOVEI	B,015		;A CARRIAGE RETURN
	IDPB	B,TYOPTR	;CR TO DISPLAY BUFFER
	MOVEI	B,012		;A LINE FEED CHARACTER.
	IDPB	B,TYOPTR	;LF TO DISPLAY BUFFER
FILLL2:	MOVE	B,0(A)		;GET THE NEXT
	CAIN	B,012		;TEST FOR LINE FEED
	JRST	FILLL3
	CAIN	B,015		;TEST FOR CR CHARACTER.
	JRST	FILLL3
	CAMLE	A,BLIMP		;TEST IF IN PRINTABLE REGION
	JRST	FILLL3
	MOVEI	B,040		;REPLACE BY A SPACE.
FILLL3:	IDPB	B,TYOPTR	;PUTIT DISPLAY BUFFER
	ADDI	A,1		;COUNT THAT
	CAMG	A,TOPLTR
	JRST	FILLL2

	MOVEI	A,1		;SHOW THE CURRENT TEXT ON POG 1
	PUSHJ	P,SHOW
	POPJ	P,


G9WAIT:	;WAIT FOR A LITTLE WHILE.
	MOVEI	0,30		;30 TICKS = 1/2 SECOND.
	MOVEM	0,TIKCNT
WAITLP:	SKIPGE	TIKCNT
	JRST	WAITX
	MOVEI	0,0
	CALL	0,[SIXBIT /SLEEP/];SLEEP 0 SECONDS.
	JRST	WAITLP

WAITX:	POPJ	P,

LINLTH:	0			;COUNTS CHARS. IN CURRENT LINE.
NEWLIN:	BLOCK	4		;THIS IS THE CURRENT LINE
LINCNT:	0			;COUNTS LINES ACCUMULATED IN LINBUF
LINBUF:	BLOCK	=200		;ALLOW FOR 50 LINES
	1
	1
	1
	1
	1
	1
	1
	1
CHRBUF:	BLOCK	=150		;COULD BE NO MORE CHARS TO BE SHOWN
BLARP:	0
BLEEP:	0
BLOOP:	0
WDLTH:	0
TOPLTR:	0
FILNAM:	0
BLIMP:	0

FWDLST←←0
JWDLST←←0
QWDLST←←0


WDLST:	;LIST OF ADDRESSES AND LENGTHS OF LISTS OF WORDS,FILENAMES ETC.
	0
	XWD	AWDLST,5
	XWD	BWDLST,2
	XWD	CWDLST,2
	XWD	DWDLST,=8
	XWD	EWDLST,=51
	XWD	FWDLST,0
	XWD	GWDLST,=10
	XWD	HWDLST,=9
	XWD	IWDLST,1
	XWD	JWDLST,0
	XWD	KWDLST,=14
	XWD	LWDLST,=10
	XWD	MWDLST,3
	XWD	NWDLST,=11
	XWD	OWDLST,=9
	XWD	PWDLST,=8
	XWD	QWDLST,0
	XWD	RWDLST,6
	XWD	SWDLST,7
	XWD	TWDLST,=20
	XWD	UWDLST,1
	XWD	VWDLST,1
	XWD	WWDLST,5
	XWD	XWDLST,1
	XWD	YWDLST,=13
	XWD	ZWDLST,1
	0
	0
	0
	0
	0

AWDLST:	SIXBIT	/PANDA/
	XWD	5,6
	SIXBIT	/P13/
	SIXBIT	/BANANA/
	XWD	6,0
	SIXBIT	/N015/
	SIXBIT	/TEA/
	XWD	3,=18
	SIXBIT	/T1/
	SIXBIT	/LISA/
	XWD	4,=12
	SIXBIT	/L17/
	SIXBIT	/ZEBRA/
	XWD	5,6
	SIXBIT	/Z37/
BWDLST:	SIXBIT	/LAMB/
	XWD	4,=12
	SIXBIT	/A43/
	SIXBIT	/CLIMB/
	XWD	5,6
	SIXBIT	/C15/
CWDLST:	SIXBIT	/CROC/
	XWD	4,=12
	SIXBIT	/S15/
	SIXBIT	/ERIC/
	XWD	4,=12
	SIXBIT	/TRUM6/
DWDLST:	SIXBIT	/BIRD/
	XWD	4,=12
	SIXBIT	/BIRD4/
	SIXBIT	/RED/
	XWD	3,=18
	SIXBIT	/N127/
	SIXBIT	/NEED/
	XWD	4,=12
	SIXBIT	/N2/
	SIXBIT	/BLIND/
	XWD	5,6
	SIXBIT	/N327/
	SIXBIT	/ISLAND/
	XWD	6,0
	SIXBIT	/I33/
	SIXBIT	/AFRAID/
	XWD	6,0
	SIXBIT	/A15/
	SIXBIT	/DAVID/
	XWD	5,6
	SIXBIT	/TRUM6/
	SIXBIT	/FOOD/
	XWD	4,=12
	SIXBIT	/FOOD/
EWDLST:	SIXBIT	/THREE/
	XWD	5,6
	SIXBIT	/N31/
	SIXBIT	/FIVE/
	XWD	4,=12
	SIXBIT	/N51/
	SIXBIT	/ATE/
	XWD	3,=18
	SIXBIT	/N81/
	SIXBIT	/BONE/
	XWD	4,=12
	SIXBIT	/D37/
	SIXBIT	/NINE/
	XWD	4,=12
	SIXBIT	/N91/
	SIXBIT	/LITTLE/
	XWD	6,0
	SIXBIT	/N827/
	SIXBIT	/FACE/
	XWD	4,=12
	SIXBIT	/FACE4/
	SIXBIT	/TOE/
	XWD	3,=18
	SIXBIT	/T37/
	SIXBIT	/FIRE/
	XWD	4,=12
	SIXBIT	/FIRE4/
	SIXBIT	/ROSE/
	XWD	4,=12
	SIXBIT	/N137/
	SIXBIT	/HORSE/
	XWD	5,6
	SIXBIT	/HORS4/
	SIXBIT	/MICE/
	XWD	4,=12
	SIXBIT	/N337/
	SIXBIT	/CONE/
	XWD	4,=12
	SIXBIT	/CONE4/
	SIXBIT	/COME/
	XWD	4,=12
	SIXBIT	/C37/
	SIXBIT	/ONE/
	XWD	3,=18
	SIXBIT	/N11/
	SIXBIT	/THE/
	XWD	3,=18
	SIXBIT	/K27/
	SIXBIT	/LINE/
	XWD	4,=12
	SIXBIT	/LINE4/
	SIXBIT	/RICE/
	XWD	4,=12
	SIXBIT	/R17/
	SIXBIT	/MOUSE/
	XWD	5,6
	SIXBIT	/MOUS4/
	SIXBIT	/NICE/
	XWD	4,=12
	SIXBIT	/R37/
	SIXBIT	/MAZE/
	XWD	4,=12
	SIXBIT	/MAZE4/
	SIXBIT	/PLANE/
	XWD	5,6
	SIXBIT	/PLAN4/
	SIXBIT	/TURTLE/
	XWD	6,0
	SIXBIT	/TURT4/
	SIXBIT	/WHALE/
	XWD	5,6
	SIXBIT	/WHAL4/
	SIXBIT	/LOVE/
	XWD	4,=12
	SIXBIT	/LOVE6/
	SIXBIT	/PIE/
	XWD	3,=18
	SIXBIT	/PIE6/
	SIXBIT	/LOUISE/
	XWD	6,0
	SIXBIT	/GIGL/
	SIXBIT	/MAXINE/
	XWD	6,0
	SIXBIT	/GIGL/
 	SIXBIT	/MIKE/
 	XWD	4,=12
	SIXBIT	/TRUM6/
	SIXBIT	/MOVE/
	XWD	4,=12
	SIXBIT	/M2/
	SIXBIT	/RIDE/
	XWD	4,=12
	SIXBIT	/R2/
	SIXBIT	/TICKLE/
	XWD	6,0
	SIXBIT	/T2/
	SIXBIT	/USE/
	XWD	3,=18
	SIXBIT	/U2/
	SIXBIT	/KITE/
	XWD	4,=12
	SIXBIT	/H23/
	SIXBIT	/SEE/
	XWD	3,=18
	SIXBIT	/I23/
	SIXBIT	/ORANGE/
	XWD	6,0
	SIXBIT	/O23/
	SIXBIT	/CHEESE/
	XWD	6,0
	SIXBIT	/E15/
	SIXBIT	/NOSE/
	XWD	4,=12
	SIXBIT	/H15/
	SIXBIT	/LIKE/
	XWD	4,=12
	SIXBIT	/I15/
	SIXBIT	/MAKE/
	XWD	4,=12
	SIXBIT	/M15/
	SIXBIT	/SESAME/
	XWD	6,0
	SIXBIT	/O15/
	SIXBIT	/ME/
	XWD	2,=24
	SIXBIT	/ME6/
	SIXBIT	/BIKE/
	XWD	4,=12
	SIXBIT	/R15/
	SIXBIT	/SCARE/
	XWD	5,6
	SIXBIT	/S15/
	SIXBIT	/TAKE/
	XWD	4,=12
	SIXBIT	/T15/
	SIXBIT	/WE/
	XWD	2,=24
	SIXBIT	/W15/
	SIXBIT	/APPLE/
	XWD	5,6
	SIXBIT	/N715/
	SIXBIT	/TREE/
	XWD	4,=12
	SIXBIT	/C15/
	SIXBIT	/ICE/
	XWD	3,=18
	SIXBIT	/N227/
	SIXBIT	/HOUSE/
	XWD	5,6
	SIXBIT	/HOUSE/
	SIXBIT	/SOME/
	XWD	4,=12
	SIXBIT	/STIME/
GWDLST:	SIXBIT	/BUG/
	XWD	3,=18
	SIXBIT	/BUG4/
	SIXBIT	/SONG/
	XWD	4,=12
	SIXBIT	/S37/
	SIXBIT	/SLING/
	XWD	5,6
	SIXBIT	/SLNG4/
	SIXBIT	/GREG/
	XWD	4,=12
	SIXBIT	/TRUM6/
	SIXBIT	/DOG/
	XWD	3,=18
	SIXBIT	/DOG4/
	SIXBIT	/FROG/
	XWD	4,=12
	SIXBIT	/N537/
	SIXBIT	/EGG/
	XWD	3,=18
	SIXBIT	/EGG6/
	SIXBIT	/BIG/
	XWD	3,=18
	SIXBIT	/N627/
	SIXBIT	/SING/
	XWD	4,=12
	SIXBIT	/SING6/
	SIXBIT	/BRING/
	XWD	5,6
	SIXBIT	/B2/
HWDLST:	SIXBIT	/BRUSH/
	XWD	5,6
	SIXBIT	/BRSH4/
	SIXBIT	/FISH/
	XWD	4,=12
	SIXBIT	/FISH4/
	SIXBIT	/ITCH/
	XWD	4,=12
	SIXBIT	/I2/
	SIXBIT	/LAUGH/
	XWD	5,6
	SIXBIT	/L2/
	SIXBIT	/TOUCH/
	XWD	5,6
	SIXBIT	/T17/
	SIXBIT	/OH/
	XWD	2,=24
	SIXBIT	/O13/
	SIXBIT	/WASH/
	XWD	4,=12
	SIXBIT	/W17/
	SIXBIT	/PUSH/
	XWD	4,=12
	SIXBIT	/P15/
	SIXBIT	/WATCH/
	XWD	5,6
	SIXBIT	/W15/
IWDLST:	SIXBIT	/YOGI/
	XWD	4,=12
	SIXBIT	/YOGI4/
KWDLST:	SIXBIT	/DUCK/
	XWD	4,=12
	SIXBIT	/QUAK4/
	SIXBIT	/MARK/
	XWD	4,=12
	SIXBIT	/MARK/
	SIXBIT	/CLOCK/
	XWD	5,6
	SIXBIT	/CLK4/
	SIXBIT	/JACK/
	XWD	4,=12
	SIXBIT	/JIB24/
	SIXBIT	/QUACK/
	XWD	5,6
	SIXBIT	/QUAK4/
	SIXBIT	/DRINK/
	XWD	5,6
	SIXBIT	/D2/
	SIXBIT	/STINK/
	XWD	5,6
	SIXBIT	/S2/
	SIXBIT	/MILK/
	XWD	4,=12
	SIXBIT	/M13/
	SIXBIT	/KICK/
	XWD	4,=12
	SIXBIT	/K15/
	SIXBIT	/TRUCK/
	XWD	5,6
	SIXBIT	/L15/
	SIXBIT	/LOOK/
	XWD	4,=12
	SIXBIT	/L15/
	SIXBIT	/QUICK/
	XWD	5,6
	SIXBIT	/Q25/
	SIXBIT	/YAK/
	XWD	3,=18
	SIXBIT	/Y15/
	SIXBIT	/BARK/
	XWD	4,=12
	SIXBIT	/DOG4/
LWDLST:	SIXBIT	/OWL/
	XWD	3,=18
	SIXBIT	/OWL4/
	SIXBIT	/SEAL/
	XWD	4,=12
	SIXBIT	/SEAL4/
	SIXBIT	/PEEL/
	XWD	4,=12
	SIXBIT	/P17/
	SIXBIT	/BALL/
	XWD	4,=12
	SIXBIT	/BALL6/
	SIXBIT	/TALL/
	XWD	4,=12
	SIXBIT	/N727/
	SIXBIT	/COOL/
	XWD	4,=12
	SIXBIT	/C23/
	SIXBIT	/WALL/
	XWD	4,=12
	SIXBIT	/W37/
	SIXBIT	/FALL/
	XWD	4,=12
	SIXBIT	/F15/
	SIXBIT	/YODEL/
	XWD	5,6
	SIXBIT	/Y15/
	SIXBIT	/CEREAL/
	XWD	6,0
	SIXBIT	/CEREA/
MWDLST:	SIXBIT	/BOOM/
	XWD	4,=12
	SIXBIT	/F15/
	SIXBIT	/GUM/
	XWD	3,=18
	SIXBIT	/G37/
	SIXBIT	/AM/
	XWD	2,=24
	SIXBIT	/N15/
NWDLST:	SIXBIT	/SEVEN/
	XWD	5,6
	SIXBIT	/N71/
	SIXBIT	/GUN/
	XWD	3,=18
	SIXBIT	/GUN4/
	SIXBIT	/MAN/
	XWD	3,=18
	SIXBIT	/STIK4/
	SIXBIT	/LION/
	XWD	4,=12
	SIXBIT	/LION4/
	SIXBIT	/RUN/
	XWD	3,=18
	SIXBIT	/RUN6/
	SIXBIT	/OPEN/
	XWD	4,=12
	SIXBIT	/O2/
	SIXBIT	/RAIN/
	XWD	4,=12
	SIXBIT	/UMB4/
	SIXBIT	/DOWN/
	XWD	4,=12
	SIXBIT	/F15/
	SIXBIT	/MOON/
	XWD	4,=12
	SIXBIT	/J15/
	SIXBIT	/BALOON/
	XWD	6,0
	SIXBIT	/N115/
	SIXBIT	/CAN/
	XWD	3,=18
	SIXBIT	/C15/
OWDLST:	SIXBIT	/ZERO/
	XWD	4,=12
	SIXBIT	/N01/
	SIXBIT	/NO/
	XWD	2,=24
	SIXBIT	/N37/
	SIXBIT	/TWO/
	XWD	3,=18
	SIXBIT	/N21/
	SIXBIT	/MOO/
	XWD	3,=18
	SIXBIT	/M27/
	SIXBIT	/ROO/
	XWD	3,=18
	SIXBIT	/KANG4/
	SIXBIT	/RADIO/
	XWD	5,6
	SIXBIT	/RADI4/
	SIXBIT	/YOYO/
	XWD	4,=12
	SIXBIT	/YOYO4/
	SIXBIT	/GO/
	XWD	2,=24
	SIXBIT	/GO6/
	SIXBIT	/HIPPO/
	XWD	5,6
	SIXBIT	/H33/
PWDLST:	SIXBIT	/LAMP/
	XWD	4,=12
	SIXBIT	/LAMP4/
	SIXBIT	/HELP/
	XWD	4,=12
	SIXBIT	/H37/
	SIXBIT	/SHIP/
	XWD	4,=12
	SIXBIT	/BOAT4/
	SIXBIT	/ZIP/
	XWD	3,=18
	SIXBIT	/ZIP4/
	SIXBIT	/JUMP/
	XWD	4,=12
	SIXBIT	/JUMP6/
	SIXBIT	/UP/
	XWD	2,=24
	SIXBIT	/UP6/
	SIXBIT	/ZAP/
	XWD	3,=18
	SIXBIT	/ZAP6/
	SIXBIT	/STOMP/
	XWD	5,6
	SIXBIT	/ELE4/
RWDLST:	SIXBIT	/FOUR/
	XWD	4,=12
	SIXBIT	/N41/
	SIXBIT	/FOR/
	XWD	3,=18
	SIXBIT	/Z27/
	SIXBIT	/EAR/
	XWD	3,=18
	SIXBIT	/E33/
	SIXBIT	/WATER/
	XWD	5,6
	SIXBIT	/D15/
	SIXBIT	/CAR/
	XWD	3,=18
	SIXBIT	/U15/
	SIXBIT	/FINGER/
	XWD	6,0
	SIXBIT	/N515/
SWDLST:	SIXBIT	/BUGS/
	XWD	4,=12
	SIXBIT	/BUGS4/
	SIXBIT	/PLUS/
	XWD	4,=12
	SIXBIT	/XPLS1/
	SIXBIT	/XMAS/
	XWD	4,=12
	SIXBIT	/XMAS4/
	SIXBIT	/KISS/
	XWD	4,=12
	SIXBIT	/KISS6/
	SIXBIT	/YES/
	XWD	3,=18
	SIXBIT	/YES6/
	SIXBIT	/GAS/
	XWD	3,=18
	SIXBIT	/U15/
	SIXBIT	/CHRIS/
	XWD	5,6
	SIXBIT	/TRUM6/
TWDLST:	SIXBIT	/CAT   /
	XWD	3,=18
	SIXBIT	/CAT4/
	SIXBIT	/LOT/
	XWD	3,=18
	SIXBIT	/L37/
	SIXBIT	/RAT   /
	XWD	3,=18
	SIXBIT	/MOUS4/
	SIXBIT	/FAT/
	XWD	3,=18
	SIXBIT	/N527/
	SIXBIT	/EIGHT/
	XWD	5,6
	SIXBIT	/N81/
	SIXBIT	/SHIRT/
	XWD	5,6
	SIXBIT	/Y37/
	SIXBIT	/NUT/
	XWD	3,=18
	SIXBIT	/SQRL4/
	SIXBIT	/BOAT/
	XWD	4,=12
	SIXBIT	/BOAT4/
	SIXBIT	/ROCKET/
	XWD	6,0
	SIXBIT	/RKT24/
	SIXBIT	/SHOOT/
	XWD	5,6
	SIXBIT	/GUN4/
	SIXBIT	/HAT/
	XWD	3,=18
	SIXBIT	/HAT6/
	SIXBIT	/EAT/
	XWD	3,=18
	SIXBIT	/E2/
	SIXBIT	/HIT/
	XWD	3,=18
	SIXBIT	/H2/
	SIXBIT	/WANT/
	XWD	4,=12
	SIXBIT	/W2/
	SIXBIT	/GIANT/
	XWD	5,6
	SIXBIT	/G23/
	SIXBIT	/QUILT/
	XWD	5,6
	SIXBIT	/Q23/
	SIXBIT	/BUTT/
	XWD	4,=12
	SIXBIT	/K15/
	SIXBIT	/CANT/
	XWD	4,=12
	SIXBIT	/M15/
	SIXBIT	/ANT/
	XWD	3,=18
	SIXBIT	/ANT6/
	SIXBIT	/QUIET/
	XWD	5,6
	SIXBIT	/QUIET/
UWDLST:	SIXBIT	/YOU/
	XWD	3,=18
	SIXBIT	/Y13/
VWDLST:	SIXBIT	/TV/
	XWD	2,=24
	SIXBIT	/TV4/
WWDLST:	SIXBIT	/COW/
	XWD	3,=18
	SIXBIT	/J15/
	SIXBIT	/CHEW/
	XWD	4,=12
	SIXBIT	/G17/
	SIXBIT	/YELLOW/
	XWD	6,0
	SIXBIT	/Y27/
	SIXBIT	/NOW/
	XWD	3,=18
	SIXBIT	/NOW/
	SIXBIT	/VW/
	XWD	2,=24
	SIXBIT	/VOLK/
XWDLST:	SIXBIT	/SIX/
	XWD	3,=18
	SIXBIT	/N61/
YWDLST:	SIXBIT	/VERY/
	XWD	4,=12
	SIXBIT	/V27/
	SIXBIT	/JOEY/
	XWD	4,=12
	SIXBIT	/J17/
	SIXBIT	/MARY/
	XWD	4,=12
	SIXBIT	/M17/
	SIXBIT	/ANGRY/
	XWD	5,6
	SIXBIT	/A2/
	SIXBIT	/FLY/
	XWD	3,=18
	SIXBIT	/B37/
	SIXBIT	/CRY/
	XWD	3,=18
	SIXBIT	/C2/
	SIXBIT	/BOY/
	XWD	3,=18
	SIXBIT	/N637/
	SIXBIT	/PLAY/
	XWD	4,=12
	SIXBIT	/P2/
	SIXBIT	/FRY/
	XWD	3,=18
	SIXBIT	/F27/
	SIXBIT	/FUNNY/
	XWD	5,6
	SIXBIT	/F13/
	SIXBIT	/XRAY/
	XWD	4,=12
	SIXBIT	/X23/
	SIXBIT	/READY/
	XWD	5,6
	SIXBIT	/N15/
	SIXBIT	/TOY/
	XWD	3,=18
	SIXBIT	/N315/
ZWDLST:	SIXBIT	/XYZ/
	XWD	3,=18
	SIXBIT	/X2/

END